package com.pucong.gitee.database.backup.business.unRelational.redis.service;

import com.pucong.gitee.database.backup.common.entity.database.dto.*;
import com.pucong.gitee.database.backup.common.entity.redis.vo.AutoRedisInfoVo;
import com.pucong.gitee.database.backup.common.entity.redis.ConfigBean;
import com.pucong.gitee.database.backup.common.entity.redis.RedisConnect;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisCluster;

import java.util.List;

/**
 * 数据源维护 service接口
 *
 * @author pucong
 * @url https://gitee.com/pucong
 * @create 2020-06-23
 */
public interface AutoRedisService {

    /**
     * 根据id获取
     *
     * @param id
     * @return
     */
    AutoRedisInfoVo getBaseInfoById(String id);

    /**
     * 保存
     *
     * @param dto
     * @return
     */
    int saveBaseInfo(RedisConnect dto);

    /**
     * 连接测试
     *
     * @param dto
     * @return
     */
    Boolean connectTest(RedisConnect dto);

    List<ConfigBean> getConfInfo(String id);

    void setConfInfo(String id, List<ConfigBean> configBeanList);

    /**
     * 关闭连接
     *
     * @param id
     */
    void disconConnect(String id);

    /**
     * 是否连接
     *
     * @param id
     * @return
     */
    Boolean isopenConnect(String id);

    String cmdwinConnect(String id, String cmd);

    /**
     * 删除
     * @param id
     */
    void deleteSourceInfo(String id);
}
